{% from "header.jinja" import header %}

"""{{ header() }}"""

from typing import TYPE_CHECKING

if TYPE_CHECKING:
    {% for name in event_names %}
    from .{{ name }} import {{ pascal_case(name) }}Event as {{ pascal_case(name) }}Event
    from .{{ name }} import {{ name }}_action_types as {{ name }}_action_types
    {% endfor %}
    from ._types import WebhookEvent as WebhookEvent
    from ._types import webhook_action_types as webhook_action_types
    from ._types import webhook_event_types as webhook_event_types
    from ._namespace import EventNameType as EventNameType
    from ._namespace import WebhookNamespace as WebhookNamespace
    from ._namespace import VALID_EVENT_NAMES as VALID_EVENT_NAMES
else:
    __lazy_vars__ = {
        {% for name in event_names %}
        ".{{ name }}": (
            "{{ pascal_case(name) }}Event",
            "{{ name }}_action_types"
        ),
        {% endfor %}
        "._types": (
            "WebhookEvent",
            "webhook_action_types",
            "webhook_event_types"
        ),
        "._namespace": (
            "EventNameType", "VALID_EVENT_NAMES", "WebhookNamespace"
        )
    }
